草庐IT

python - 有效的 XPath 表达式

全部标签

ruby-on-rails - 文档 "doc.xml"没有有效的根 (REXML::ParseException)

我第一次尝试将XML文档转换为Ruby哈希,但没有成功。我有我的XML文档,doc.xml,与我的脚本一起在一个文件夹中hashrunner.rb.在hashrunner.rb:require'active_support/core_ext/hash'hash=Hash.from_xml("doc.xml")putshashXML文档的第一行是,如果这有帮助的话。在我的控制台中,当我运行rubyhashrunner.rb时,我收到错误消息:/Users/me/.rvm/gems/ruby-1.9.3-p374/gems/activesupport-4.0.0/lib/active_su

php - 将两个 Xpath 组合成一个循环?

我正在使用xpath从文档中获取信息,唯一的问题是我无法将它们组合成1个for循环以便信息在页面上正确显示。我的代码是:preserveWhiteSpace=FALSE;$doc->load('http://mdoerrdev.com/xml/updates-mits.xml');$xpath=newDOMXPath($doc);$xpath->registerNamespace('MITS',"http://www.mitsproject.org/namespace");$unitName=$xpath->evaluate("//ILS_Unit[@FloorplanID='5505

python - 在 Python 中使用 minidom 查找 XML 元素的特定路径

根据thisthread,我正在使用xml.dom.minidom做一些非常基本的XML遍历,只读。让我感到困惑的是,为什么它的getElementsByTagName会在没有明确为其提供确切路径的情况下找到多个层次结构级别的节点。XML:Python代码:xmldoc=minidom.parse('sampleXML.xml')items=xmldoc.getElementsByTagName('item')foriteminitems:printitem.attributes['name'].value打印:item1item2item3item4item5item6item7it

python - 不要折叠 XML 输出中的空节点

我正在使用python的xml.etree.ElementTree来表示XML文档。我想将它输出到文本,但我想保持空元素(没有子元素的元素)展开,而不是折叠。例如,我想要这个:取而代之的是:我目前正在使用ElementTree.tostring,但我愿意使用任何其他内置python模块或函数来序列化文档,只要我可以非常轻松地使用ElementTree反对它。仅供引用,我想保持元素展开的原因是因为我想更轻松地将输出与不会折叠空元素的第三方程序的输出进行区分。 最佳答案 您可以将method="html"传递给tostring()称呼。

python string 编解码(encode b64encode)

SincePython3.0, strings arestoredasUnicode,i.e.eachcharacterinthestringisrepresentedbyacodepoint.So,eachstringisjustasequenceofUnicodecodepoints.在Python3中,有str,bytes,bytearray。最常用的strtype存储的是Unicode字符的codingpoint,而bytestype存储的是bytes。而且在Python3中不会有bytes和str的隐形转换。为了有效地存储str字符串,codingpoint序列被转换为一组字节。该过

xml - XPATH选择所有不为空的节点

如何选择所有具有某些值且不为空的节点?例如,我有以下XML:23Health在这里我想选择那些是bbb的子节点并具有一些值的节点,即节点ccc和eee。 最佳答案 selectthosenodeswhicharechildrenofbbbandhavesomevalue如果你想包含只包含空格的节点,尝试:/bbb/*[string()]如果你想忽略只包含空格的节点(),尝试:/bbb/*[normalize-space()] 关于xml-XPATH选择所有不为空的节点,我们在StackO

xml - Schematron 中的 XPath : How to determine if an xmlns attribute is present on a node

我正在尝试匹配缺少xmlns属性的特定元素的任何实例,但我无法通过语法获得匹配。我的xml如图所示:我想返回第一个节点,而不是第二个。如果我根据第二个节点上显示的style属性进行匹配,我可以简单地使用not(@style)但这不适用于not(@xmlns:m)。我试图通过搜索具有与URI匹配的值的任何属性来规避此问题,但同样,这适用于其他属性,但不适用于xmlns:m。使用XPath匹配/解析xmlns属性是否需要某种限制或语法怪癖? 最佳答案 Istheresomesortoflimitationorsyntaxquirktha

xml - XPath 表达式不返回任何结果

我有这个XML:000050000301234001010123401234我正在尝试构建XPath以最终引用ClientMatterNumber节点之一,但在构建它时遇到了麻烦。例如,这有效:/s:Envelope/s:Body但这不会返回任何结果:/s:Envelope/s:Body/ExtractResponse我错过了什么?我试过很多在线XPath测试器,包括this,但它们都会导致相同的行为。 最佳答案 文档中的元素ExtractResponse具有命名空间urihttp://tempuri.org/。XPath表达式中任

python - 使用 Python 的维基百科

我有这个非常简单的python代码来读取维基百科api的xml:importurllibfromxml.domimportminidomusock=urllib.urlopen("http://en.wikipedia.org/w/api.php?action=query&titles=Fractal&prop=links&pllimit=500")xmldoc=minidom.parse(usock)usock.close()printxmldoc.toxml()但此代码返回这些错误:Traceback(mostrecentcalllast):File"/home/user/work

java - java中xpath的问题

我目前在java中遇到我的xpath表达式问题。我正在尝试获取商店名称列表!我得到了以下XML;1ShopNameShopUrl2ShopNamesShopUrl我在文档中将其提供给类似这样的函数:ListgetShops(Documentd)throwsException{Listshopnames=newArrayList();XPathxpath=XPathFactory.newInstance().newXPath();XPathExpressionexpr=xpath.compile("/descendant::w:shop/descendant::w:shopName");